package com.aaa.ssm.controller;

import com.aaa.ssm.entity.TDicNechannel;
import com.aaa.ssm.entity.TNews;
import com.aaa.ssm.service.TNewsService;
import com.aaa.ssm.util.Page;
import com.aaa.ssm.util.Result;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

@RestController
@RequestMapping("tn")
public class TNewsController extends BaseController{
    @Resource
    private TNewsService tNewsService;

    /**
     * 单表的分域带参查询
     * @param page
     * @return
     */
    @PostMapping("queryPage")
    public Result queryPage(@RequestBody Page<TNews> page){
        return success(tNewsService.queryPage(page));
    }

    //---相当于
    //@RequestMapping(value = "queryByAll",method = RequestMethod.POST)
    //@RequestBody String框架 会帮我们把 前端 传输过来的 JSON字符串（放入请求的body部分） 转换为 对象 或者 集合
    //get请求是没有请求的body 所以本来的查询操作，不能使用@GetMapping---只能使用 PostMapping 或 PutMapping

    /**
     * 实现了新闻和新闻咨询两表联查
     * @param page
     * @return
     */
    @PostMapping("queryAll") // 新建资源映射  设置访问路径 post请求
    public Result queryAll(@RequestBody Page<TDicNechannel> page){
        return success(tNewsService.queryAll(page));
    }
    //根据编号查询
    @PostMapping("queryById")//普通属性传参 不需要加requestbody
    public Result queryById(int id){
        return success(tNewsService.queryById(id));
    }
    //添加
    @PostMapping("add")
    //---相当于
    //@RequestMapping(value = "queryByAll",method = RequestMethod.POST)
    public Result add(@RequestBody TNews tNews){
        return success(tNewsService.add(tNews));
    }
    //更新
    @PostMapping("update")
    //---相当于
    //@RequestMapping(value = "queryByAll",method = RequestMethod.POST)
    public Result update(@RequestBody TNews tNews){
        return success(tNewsService.update(tNews));
    }
    //删除
    @DeleteMapping("deleteById/{id}")
    public Result deleteById(@PathVariable("id") int id){
        return success(tNewsService.deleteById(id));
    }

}
